Internet telephony systems are typically implemented using VoIP techniques, such as those described in International Telecommunication Union-Telecommunication Standardization Sector (ITU-T) Recommendation H.323, “Packet-based multimedia communication systems,” November 2000, and ITU-T Recommendation H.225, “Call signaling protocols and media stream packetization for packet-based multimedia communication systems,” November 2000, both of which are incorporated by reference herein.
As is described in greater detail in the above-cited H.323 document, an Internet Protocol (IP) endpoint, such as a personal computer (PC), IP telephone or other communication terminal of an Internet telephony system, communicates with a “gatekeeper,” which may be a communication system switch such as a private branch exchange (PBX).
More specifically, the IP endpoint generally sends Registration, Admission, Status for Signaling (RAS) messages in order to register with the gatekeeper prior to establishment of a voice path. An RAS message contains within its header the transport address, e.g., IP address and User Datagram Protocol (UDP) port number, of the IP endpoint. Its payload also includes the IP address of the IP endpoint. However, the IP address in the header of the RAS message may undergo one or more network address translation (NAT) operations within the network, e.g., in a router, virtual private network (VPN) gateway, or other network element. For example, VPN gateways configured using conventional products commercially available from vendors such as Check Point Software Technologies Ltd. of Ramat Gan, Israel and Cisco Systems Inc. of San Jose, Calif., USA, typically assign an IP address to a given IP endpoint client from a pool of addresses. This assigned IP address is a “virtual” address, and does not bind to the endpoint terminal itself.
When the gatekeeper receives the RAS message, it attempts to send an acknowledgment to the IP address contained in the payload of the RAS message. As a result of the NAT, the acknowledgment will not reach the IP endpoint, and the registration process between the endpoint and the gateway will therefore be unable to complete successfully. As a more particular example, in the context of the above-noted VPN gateway, the IP endpoint will attempt to register with the gateway using the actual endpoint IP address and not the virtual IP address assigned by the gateway, and the registration fails.
A significant problem thus exists in conventional VoIP techniques in that an H.323 endpoint generally cannot register with a gatekeeper when a NAT operation is performed within the network on an RAS message from the endpoint.